const total=1000 // 定义需要生成的函数数量，即1000个任务
export const arr:any[]=[] //存储任务函数的数组

// 生成1000个函数并将其添加到数组中
export function generateArr() {
    for (let i = 0; i < total; i++) {
        // 每个函数的作用是将一个 <div> 元素插入到页面的 body 中
        arr.push(function() {
            document.body.innerHTML += `<div>${i + 1}</div>`; // 将当前索引 + 1 作为内容
        });
    }
}

// 调用函数生成任务数组
 generateArr() 

export function workLoop(deadline:{
    timeRemaining:()=>number
}) {
    if(deadline.timeRemaining()>0 && arr.length>0){
        arr.shift()()
    }
    requestIdleCallback(workLoop)
}
